package object;

public class ObjectDemo {
    public static void main(String[] args) {
        /*
        Point p=new Point(100,200);
        System.out.println(p);
        System.out.println(p.toString());
         */


        /*
        调用Object类的equals（），内部还是在使用==比较地址，没有参考意义
        若想比较对象的属性值是否相同，我们认为Object类的equals（）并不能满足需求
        因此常常需要重写equals（）
         */


        /*
        Point p1=new Point(100,200);
        Point p2=new Point(100,200);
        System.out.println(p1==p2);//false,==比较的是地址
        System.out.println(p1.equals(p2));//false

         */


        String s1=new String("hello");
        String s2=new String("hello");
        //String类重写了equals()来比较字符串的内容是否相同
        System.out.println(s1.equals(s2));


        StringBuilder builder1=new StringBuilder("hello");

        StringBuilder builder2=new StringBuilder("hello");
        //StringBuilder类没有重写equals(),因此调用的还是Object类的equals()比较地址
        System.out.println(builder1.equals(builder2));
    }
}
